Communication devices of different types are proliferating at a rapid pace to meet the needs of the consumer. The semiconductor industry has contributed to the rapid increase in use of personal communication devices by continually driving down cost while providing higher performance. In general, performance improvements result when wafer processing permits smaller critical dimensions thus allowing higher circuit density per unit of silicon area. One type of communication device utilizes a handsfree design that allows a user or users to communicate without holding a device. An example of such a handsfree device is the well known teleconferencing system that permits discussions between groups of people. The teleconferencing system provides simultaneous two-way transmission of information on the same communication channel.
A problem associated with a handsfree communication device such as a teleconference system is the generation of an echo that occurs when the speaker output is received by the microphone along with the vocal content intended to be sent. The echo can be quite distracting and in some cases make the communication incoherent. Thus, there is an ongoing effort to provide circuitry that reduces or cancels the echo inherent in these systems.
The long distance telephone network was one of the first applications requiring echo cancellation. In this case, echo is the result of an impedance mismatch between the various links in the communications system, i.e. the handset to telephone line. This type of electrical echo is referred to as line echo and is typically well behaved and therefore easier to cancel than acoustic echo. In general, the echo problem is minimized by using a filter that generates a signal substantially equal to the echo and then subtracting it from the signal received from the microphone.
Although the problem is similar, canceling echo in a teleconference device is significantly more difficult than the long distance telephone network described hereinabove. In particular, a teleconference scenario has a host of variable parameters and a potential for a wider range of acoustic coupling. For example, the distance between the microphone and speaker may vary greatly depending on the room configuration, the teleconference equipment, and the location of the people. The echo cancellation circuitry must cope with the potential wider dynamic range corresponding to substantial changes in magnitude of the voice and echo.
As mentioned previously, handsfree systems are being integrated in many different environments that pose challenging echo cancellation problems. An automobile is an environment in which a handsfree phone system provides increased safety due to the known hazards of driving while holding a cellular phone. One version of a handsfree phone system is integrated with a radio/stereo system such that the received vocal content appears at the output of the stereo speakers of the automobile. Variable spound level is not normally encountered in an office teleconference environment. Typically, in a teleconference the volume is adjusted at the beginning of the conversation. A mobile environment such as in an automobile the sound level may change significantly over short periods of time causing the user to make adjustments to the volume. Such dynamic changes in the voice and echo can render prior art echo cancellation circuitry ineffective on a fixed point processor.
In general, echo cancellation circuitry uses a digital signal processor (DSP) to reduce echo. The DSP is typically programmed as a finite impulse response (FIR) filter which is a non-recursive filter. The output of the FIR filter is a function of the current input and previous input values. An impulse provided to an FIR filter has the characteristic of a response of finite duration; thus, the name finite impulse response.
An echo cancellation circuit integrated in a communication system is simplified by describing the generation of a signal at a far end of the system and providing it to a near end of the system. The near end of the communication system includes a speaker that is acoustically coupled to a microphone. One or more people speak into the microphone on the near end. The output of the microphone comprises the vocal content intended to be sent and the “echo” from the speaker. The FIR filter is used to create an echo cancellation signal that is similar to the echo received by the microphone on the near end. The input of the FIR filter receives the signal sent from the far end to generate the echo cancellation signal. The output of the FIR filter is subtracted from the signal provided by the microphone thereby reducing the magnitude of the echo portion of the signal sent to the far end. An error signal corresponding to the residual echo error is generated. The error signal is fed back to the FIR filter for further adjustments to reduce the echo over time. The time required to reduce the echo to a predetermined minimum level is known as the convergence time.
Prior art approaches to echo cancellation incorporate one or more automatic gain control (AGC) circuits to prevent an overload condition from occurring. In general, the automatic gain control and other circuitry are added to limit the range of operation of the FIR filter. The compression provided by the AGC can boost or attenuate a signal to keep it within a predetermined range. The introduction of an independent AGC function at the front end of an echo canceller detrimentally affects the gain of the system thereby forcing the filter to continuously adapt to a moving target, thus reducing performance. In particular, if the AGC has a time constant that is not significantly larger than the convergence time of a Normalized Least Mean Square (NLMS) filter, then the filter cannot fully compensate for the rapid gain changes introduced by the AGC algorithm. This effectively reduces the performance of the echo canceller. However, rapid AGC changes are required to keep the dynamic range of the input signal and thereby the filter coefficients within the limits of the fixed point processor. For example, prior art echo cancellation circuits will overflow in a condition such as described hereinabove when the volume is rapidly changed in response to the changing environment in an automobile.
Accordingly, it would be desirable to provide an echo cancellation circuit capable of minimizing echo due to acoustic coupling from speaker to microphone. It would further be desirable that the echo cancellation circuitry not overflow under dynamic conditions. Furthermore, other desirable features and characteristics of the present invention will become apparent from the subsequent detailed description and the appended claims, taken in conjunction with the accompanying drawings and the foregoing technical field and background.